﻿using System;
using System.Collections.Generic;

namespace DimensionsHelper.Common.Utils;

public class RegexElementFormatArgs : EventArgs
{
    public RegexElementFormatArgs(string text)
    {
        Text = text;
        Texts = Array.Empty<string>();
        Handled = false;
    }

    public RegexElementFormatArgs(IList<string> texts)
    {
        Text = string.Empty;
        Texts = texts;
        Handled = false;
    }

    /// <summary>
    ///     需要格式化的文本内容，订阅相关事件的对象应当在格式化文本后赋值给此属性。
    /// </summary>
    public string Text { get; set; }

    /// <summary>
    ///     需要格式化的字符串列表，当此值不是空列表时，应当使用此列表的值计算最终结果，并赋值给<see cref="Text" />。
    /// </summary>
    public IList<string> Texts { get; }

    /// <summary>
    ///     指示此格式化是否已经被完成了。
    /// </summary>
    public bool Handled { get; set; }
}